Reversing an imperative concurrent programming language

نویسندگان

چکیده

We introduce a method of reversing the execution imperative concurrent programs. Given an irreversible program, we describe process producing two versions. The first performs forward and saves information necessary for reversal. second uses this saved to simulate propose using identifiers capture statement order, use correctly undo data races via backtracking reversibility. prove reversibility be correct, showing that initial program state is restored all used (garbage-clean).

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Integrating Constraints into an Imperative Programming Language

We investigate here how to integrate constraints directly into the imperative programming paradigm, as \\rst class citizens" and not by means of an external library. To this end we provide a systematic account of the issues that arise. In particular, we discuss the role of the logical and customary variables, the interaction between the constraint store and the program, and the need for lists. ...

متن کامل

ImNet: An Imperative Network Programming Language

One of the most recent architectures of networks is Software-Defined Networks (SDNs) using a controller appliance to control the set of switches on the network. The controlling process includes installing or uninstalling packet-processing rules on flow tables of switches. This paper presents a high-level imperative network programming language, called ImNet, to facilitate writing efficient, yet...

متن کامل

Compensations in an Imperative Programming Language

Numerous mechanisms are used to deal with failure of systems or processes, one of which is that of compensating actions. A compensation can be seen as a program which somehow cancels out the effects of another — and by organising code in such a way so as to associate each program with its compensation, enables implicit recovery to a sane state if part of a computation somehow fails. In this pap...

متن کامل

An imperative programming language for spoken language translation

This paper describes the Grammar Programming Language (GPL), a new formalism for feature-structure-based linguistic computation. GPL was designed to meet the needs of spoken language translation. GPL is easy to use, concise, and efficient, and it allows the direct expression of detailed linguistic algorithms. GPL was used successfully as the basis of Sony's machine translation project.

متن کامل

Alma-0: an Imperative Language That Supports Declarative Programming Alma-0: an Imperative Language That Supports Declarative Programming

We describe here an implemented small programming language, called Alma-0, that augments the expressive power of imperative programming by a limited number of features inspired by the logic programming paradigm. These additions encourage declarative programming and make it a more attractive vehicle for problems that involve search. We illustrate the use of Alma-0 by presenting solutions to a nu...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Science of Computer Programming

سال: 2022

ISSN: ['1872-7964', '0167-6423']

DOI: https://doi.org/10.1016/j.scico.2022.102873